GtkImagePrivate *priv;
GdkPixbufAnimation *anim;
gint scale_factor;
- gint old_width, old_height;
- gint new_width, new_height;
- GtkStyleContext *context;
-
+
g_return_if_fail (GTK_IS_IMAGE (image));
priv = image->priv;
g_object_freeze_notify (G_OBJECT (image));
-
- context = gtk_widget_get_style_context (GTK_WIDGET (image));
- _gtk_icon_helper_get_size (priv->icon_helper, context, &old_width, &old_height);
-
- gtk_image_reset (image);
+
+ gtk_image_clear (image);
if (filename == NULL)
{
if (anim == NULL)
{
- gtk_image_set_from_icon_name (image, "image-missing", DEFAULT_ICON_SIZE);
+ gtk_image_set_from_icon_name (image,
+ "image-missing",
+ DEFAULT_ICON_SIZE);
g_object_thaw_notify (G_OBJECT (image));
return;
}
g_object_unref (anim);
priv->filename = g_strdup (filename);
-
- _gtk_icon_helper_get_size (priv->icon_helper, context, &new_width, &new_height);
- if (gtk_widget_get_visible (GTK_WIDGET (image)))
- {
- if (old_width != new_width || old_height != new_height)
- gtk_widget_queue_resize (GTK_WIDGET (image));
- else
- gtk_widget_queue_draw (GTK_WIDGET (image));
- }
-
+
g_object_thaw_notify (G_OBJECT (image));
}
if (animation == NULL)
{
- gtk_image_set_from_icon_name (image, "image-missing", DEFAULT_ICON_SIZE);
+ gtk_image_set_from_icon_name (image,
+ "image-missing",
+ DEFAULT_ICON_SIZE);
g_object_thaw_notify (G_OBJECT (image));
return;
}
GdkPixbuf *pixbuf)
{
GtkImagePrivate *priv;
- gint old_width, old_height;
- gint new_width, new_height;
- GtkStyleContext *context;
g_return_if_fail (GTK_IS_IMAGE (image));
- g_return_if_fail (pixbuf == NULL || GDK_IS_PIXBUF (pixbuf));
+ g_return_if_fail (pixbuf == NULL ||
+ GDK_IS_PIXBUF (pixbuf));
priv = image->priv;
g_object_freeze_notify (G_OBJECT (image));
-
- context = gtk_widget_get_style_context (GTK_WIDGET (image));
- _gtk_icon_helper_get_size (priv->icon_helper, context, &old_width, &old_height);
-
- gtk_image_reset (image);
+
+ gtk_image_clear (image);
if (pixbuf != NULL)
_gtk_icon_helper_set_pixbuf (priv->icon_helper, pixbuf);
- _gtk_icon_helper_get_size (priv->icon_helper, context, &new_width, &new_height);
- if (gtk_widget_get_visible (GTK_WIDGET (image)))
- {
- if (old_width != new_width || old_height != new_height)
- gtk_widget_queue_resize (GTK_WIDGET (image));
- else
- gtk_widget_queue_draw (GTK_WIDGET (image));
- }
-
g_object_notify (G_OBJECT (image), "pixbuf");
-
+
g_object_thaw_notify (G_OBJECT (image));
}
GdkPixbufAnimation *animation)
{
GtkImagePrivate *priv;
- gint old_width, old_height;
- gint new_width, new_height;
- GtkStyleContext *context;
g_return_if_fail (GTK_IS_IMAGE (image));
g_return_if_fail (animation == NULL ||
if (animation)
g_object_ref (animation);
- context = gtk_widget_get_style_context (GTK_WIDGET (image));
- _gtk_icon_helper_get_size (priv->icon_helper, context, &old_width, &old_height);
-
- gtk_image_reset (image);
+ gtk_image_clear (image);
if (animation != NULL)
{
}
g_object_notify (G_OBJECT (image), "pixbuf-animation");
-
- _gtk_icon_helper_get_size (priv->icon_helper, context, &new_width, &new_height);
- if (gtk_widget_get_visible (GTK_WIDGET (image)))
- {
- if (old_width != new_width || old_height != new_height)
- gtk_widget_queue_resize (GTK_WIDGET (image));
- else
- gtk_widget_queue_draw (GTK_WIDGET (image));
- }
-
+
g_object_thaw_notify (G_OBJECT (image));
}
{
GtkImagePrivate *priv;
gchar *new_name;
- gint old_width, old_height;
- gint new_width, new_height;
- GtkStyleContext *context;
g_return_if_fail (GTK_IS_IMAGE (image));
g_object_freeze_notify (G_OBJECT (image));
new_name = g_strdup (icon_name);
-
- context = gtk_widget_get_style_context (GTK_WIDGET (image));
- _gtk_icon_helper_get_size (priv->icon_helper, context, &old_width, &old_height);
-
- gtk_image_reset (image);
+ gtk_image_clear (image);
if (new_name)
{
g_object_notify (G_OBJECT (image), "icon-name");
g_object_notify (G_OBJECT (image), "icon-size");
-
- _gtk_icon_helper_get_size (priv->icon_helper, context, &new_width, &new_height);
- if (gtk_widget_get_visible (GTK_WIDGET (image)))
- {
- if (old_width != new_width || old_height != new_height)
- gtk_widget_queue_resize (GTK_WIDGET (image));
- else
- gtk_widget_queue_draw (GTK_WIDGET (image));
- }
-
+
g_object_thaw_notify (G_OBJECT (image));
}
GtkIconSize size)
{
GtkImagePrivate *priv;
- gint old_width, old_height;
- gint new_width, new_height;
- GtkStyleContext *context;
g_return_if_fail (GTK_IS_IMAGE (image));
if (icon)
g_object_ref (icon);
- context = gtk_widget_get_style_context (GTK_WIDGET (image));
- _gtk_icon_helper_get_size (priv->icon_helper, context, &old_width, &old_height);
-
- gtk_image_reset (image);
+ gtk_image_clear (image);
if (icon)
{
g_object_notify (G_OBJECT (image), "gicon");
g_object_notify (G_OBJECT (image), "icon-size");
-
- _gtk_icon_helper_get_size (priv->icon_helper, context, &new_width, &new_height);
- if (gtk_widget_get_visible (GTK_WIDGET (image)))
- {
- if (old_width != new_width || old_height != new_height)
- gtk_widget_queue_resize (GTK_WIDGET (image));
- else
- gtk_widget_queue_draw (GTK_WIDGET (image));
- }
-
+
g_object_thaw_notify (G_OBJECT (image));
}
cairo_surface_t *surface)
{
GtkImagePrivate *priv;
- gint old_width, old_height;
- gint new_width, new_height;
- GtkStyleContext *context;
g_return_if_fail (GTK_IS_IMAGE (image));
if (surface)
cairo_surface_reference (surface);
- context = gtk_widget_get_style_context (GTK_WIDGET (image));
- _gtk_icon_helper_get_size (priv->icon_helper, context, &old_width, &old_height);
-
- gtk_image_reset (image);
+ gtk_image_clear (image);
if (surface)
{
}
g_object_notify (G_OBJECT (image), "surface");
-
- _gtk_icon_helper_get_size (priv->icon_helper, context, &new_width, &new_height);
- if (gtk_widget_get_visible (GTK_WIDGET (image)))
- {
- if (old_width != new_width || old_height != new_height)
- gtk_widget_queue_resize (GTK_WIDGET (image));
- else
- gtk_widget_queue_draw (GTK_WIDGET (image));
- }
-
+
g_object_thaw_notify (G_OBJECT (image));
}